package week05.necessary.jdbc.base;

import java.sql.Connection;
import java.sql.SQLException;

/**
 * JDBC操作接口
 */
public interface IJdbcExample {
    /**
     * 获取数据库连接操作
     * @return
     */
    Connection getConnection() throws SQLException;

    /**
     * 新增操作
     * @param sql
     * @param params
     */
    void insertExample(String sql, Object... params) throws SQLException;

    /**
     * 修改操作
     * @param sql
     * @param params
     */
    void updateExample(String sql, Object... params) throws SQLException;

    /**
     * 删除操作
     * @param sql
     * @param params
     */
    void deleteExample(String sql, Object... params) throws SQLException;

    /**
     * 查询操作
     * @param sql
     * @param params
     */
    void queryExample(String sql, Object... params) throws SQLException;

    /**
     * 事务操作
     * @param sql
     */
    void executeWithTransaction(String... sql) throws SQLException;
}
